package Libs.Dados.Objetos
{
	import mx.collections.ArrayCollection;
	
	[RemoteClass(alias="Neturion.Dados.Assunto")]
	public class Assunto
	{
		private var _assuntoId:int;
        private var _codigo:String;
        private var _descricao:String;
        private var _inicioVigencia:Date;
        private var _fimVigencia:Date;
        private var _dataCadastro:Date;
        private var _prazoResolucao:int;
        private var _observacao:String;
        private var _tipoAssunto:Libs.Dados.Objetos.TipoAssunto;
        private var _funcionarioResponsavel:Libs.Dados.Objetos.Funcionario;
        private var _setorResponsavel:Libs.Dados.Objetos.Setor;
        private var _listaAssuntoProcedimentos:ArrayCollection;
        private var _listaMotivosProtocolo:ArrayCollection;
        private var _neturionLog:Libs.Dados.Objetos.NeturionLog;
        
		public function Assunto()
		{
			this._listaMotivosProtocolo = new ArrayCollection();
			this._listaAssuntoProcedimentos=new ArrayCollection();
		}
		
		public function get AssuntoId():int
        {
           return this._assuntoId; 
        }
        
        public function get Codigo():String
        {
            return this._codigo;
        }
      
        public function get Descricao():String
        {
            return this._descricao; 
        }
       
        public function get InicioVigencia():Date
        {
        	var data:Date = null;
        	if (this._inicioVigencia != null)
        	{
        		var dia:Number = _inicioVigencia.dateUTC; 
	        	var mes:Number = _inicioVigencia.monthUTC; 
	        	var ano:Number = _inicioVigencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._inicioVigencia = data;
        }
       
        public function get FimVigencia():Date
        {
        	var data:Date = null;
        	if (this._fimVigencia != null)
        	{
        		var dia:Number = _fimVigencia.dateUTC; 
	        	var mes:Number = _fimVigencia.monthUTC; 
	        	var ano:Number = _fimVigencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._fimVigencia = data;
        }
       
        public function get DataCadastro():Date
        {
        	var data:Date = null;
        	if (this._dataCadastro != null)
        	{
        		var dia:Number = _dataCadastro.dateUTC; 
	        	var mes:Number = _dataCadastro.monthUTC; 
	        	var ano:Number = _dataCadastro.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._dataCadastro = data;
        }
       
        public function get PrazoResolucao():int
        {
            return this._prazoResolucao; 
        }
        
        public function get Observacao():String
        {
             return this._observacao; 
        }
       
        public function get TipoAssunto():Libs.Dados.Objetos.TipoAssunto
        {
           return this._tipoAssunto; 
        }
       
        public function get FuncionarioResponsavel():Libs.Dados.Objetos.Funcionario
        {
           return this._funcionarioResponsavel; 
        }
        
        public function get SetorResponsavel():Libs.Dados.Objetos.Setor
        {
            return this._setorResponsavel; 
        }
       
        public function get ListaAssuntoProcedimentos():ArrayCollection
        {
             return this._listaAssuntoProcedimentos; 
        }
       
        public function get ListaMotivosProtocolo():ArrayCollection
        {
             return this._listaMotivosProtocolo; 
        }
       
        public function get NeturionLog():Libs.Dados.Objetos.NeturionLog
        {
             return this._neturionLog; 
        }

////////////////// set ////////////////
        public function set AssuntoId(value:int):void
        {
      		 this._assuntoId=value; 
        }
        
        public function set Codigo(value:String):void
        {
            this._codigo=value;
        }
      
        public function set Descricao(value:String):void 
        {
             this._descricao=value; 
        }
       
        public function set InicioVigencia(value:Date):void
        {
              this._inicioVigencia=value; 

        }
       
        public function set FimVigencia(value:Date):void
        {
             this._fimVigencia=value; 
        }

        public function set DataCadastro(value:Date):void
        {
             this._dataCadastro=value; 
        }
       
        public function set PrazoResolucao(value:int):void
        {
             this._prazoResolucao=value; 
        }
        
        public function set Observacao(value:String):void
        {
              this._observacao=value; 
        }
       
        public function set TipoAssunto(value:Libs.Dados.Objetos.TipoAssunto):void 
        {
            this._tipoAssunto=value; 
        }

        public function set FuncionarioResponsavel(value:Libs.Dados.Objetos.Funcionario):void
        {
            this._funcionarioResponsavel=value; 
        }

        public function set SetorResponsavel(value:Libs.Dados.Objetos.Setor):void
        {
             this._setorResponsavel=value; 
        }

        public function set ListaAssuntoProcedimentos(value:ArrayCollection):void 
        {
              this._listaAssuntoProcedimentos=value; 
        }

        public function set ListaMotivosProtocolo(value:ArrayCollection):void 
        {
              this._listaMotivosProtocolo=value; 
        }
       
        public function set NeturionLog(value:Libs.Dados.Objetos.NeturionLog):void
        {
              this._neturionLog=value; 
        }
	}
}